import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import '@/assets/global.less'
// 让elementUI注册的代码参与打包，才能在页面上运行并注册组件
import '@/elementUI/index'

import '@/utils/request'
import '@/api/index'

// 导入富文本编辑器
import VueQuillEditor from 'vue-quill-editor'
// 导入富文本编辑器的样式
import 'quill/dist/quill.core.css'
import 'quill/dist/quill.snow.css'
import 'quill/dist/quill.bubble.css'

// 引入dayjs包，这个包可以方法将日期转换为指定格式
import dayjs from 'dayjs'
Vue.prototype.$formatDate = (dateObj) => { // 在Vue的原型对象上添加一个formatDate方法，便于所有组件可以方便的使用这个方法，这个方法接收一个参数dateObj
  return dayjs(dateObj).format('YYYY-MM-DD HH:mm:ss') // 借助dayjs包中的内置方法将传递进来的参数dateObj转换为指定格式，并把转换好的dateObj返回给formatDate方法的调用处
}

// 全局注册富文本编辑器
Vue.use(VueQuillEditor) // 此方法内会用Vue.component注册quillEditor名字全局组件

// ctrl + s 会自动修复大多报错

Vue.config.productionTip = false

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')

// 后端返回图片链接地址的经验：
// 后端返回的图片地址是半截的
// 因为服务器的域名可能会来回变化，所以数据库里的地址只有相对路径
// 要求：前端请求此图片的时候，后端告诉你文件真身所在的服务器域名，前端自己拼接前缀

// 项目打包上线后：
// 1. 不使用publicPath, 打包的项目必须保证dist的内容在服务器的根目录
// 2. 使用publicPath可以影响index.html引入其他打包后的资源的前缀相对路径
// 3. 在vue.config.js中添加  publicPath: './'
